As generation of content by end users continues to become easier and more widespread, and, similarly, consumption of such end user content also continues to become easier and more widespread, communications service providers are under increasing pressure to support distribution of larger quantities of user generated content to large numbers of end users. In existing networks, the distribution of user generated content to end users is performed using Content Distribution Networks (CDNs) and/or Peer-to-Peer (P2P) Distribution Networks (PDNs).
CDNs are typically designed to distribute data from a small number of content origination points to a large number of content destination points, such that content is distributed from a small number of content sources to a large number of content consumers. Disadvantageously, however, CDNs are not suited to distribution of user generated content because user generated content originates from a large number of content origination points (i.e., the user terminals of the end users that are creating the user generated content) rather than from a few content origination points.
PDNs are typically designed to deliver data from a large number of data caches to a large number of data consumers. In many cases, the data is initially distributed to the data caches from a small number of centralized data stores. In PDNs, the data caches are also data consumers and, thus, the P2P algorithms must treat the data caches as unmanaged and unreliable. That is, PDNs do not act as stewards of the memory or network connection resources of the data sources.
In some cases, hybrid CDN-PDN networks are in use. Similar to the CDNs and PDNs, hybrid CDN-PDN networks are designed to ingest data from a small number of data sources and distribute the data to a large number of data consumers. Hybrid CDN-PDN networks initially receive data from managed, reliable content caches, using such managed, reliable content caches in conjunction with end user caches to distribute data to data consumers.